<?php
/**
 * Prueft anhand eines Woerterbuchs, ob ein Wort darin vorkommt
 * 
 * @author		Joachim Ruf
 * @copyright	Copyright (c) 2003-2010 Loresoft Software (http://www.loresoft.de)
 * @license		http://yapary.loresoft.de/lizenzbedingungen     New BSD License
 * 
 * */


Class Yapary_Dictionary_Dictionary
{
	/** @var object $oYapary_Filebase : Zum oeffnen einer Datei */
	private $oYapary_Filebase;

	/** @var Array $arrData	: Liste aller Woerter im Woerterbuch */
	private $arrData = array();
	
	
	/**
	* Prueft ob ein Wort in einem Woerterbuch vorkommt
	* @param string $dict : (Pfad)-Name zum Woerterbuch
	* 		 Woerter in diesem Woerterbuch muessen durch Lerrzeichen voneinander getrennt sein
	*/
	function __construct (Yapary_Filebase $_cYapary_Filebase, $dict)
	{
		$this->oYapary_Filebase = $_cYapary_Filebase;
		if (!file_exists($dict)) {
		    trigger_error('File <b>'.$dict.'</b > does not exist', E_USER_WARNING);
		}
		
		$str = $this->oYapary_Filebase->readFile($dict);
		$this->arrData = explode(' ', $str);
	}

	
	/**
	* Prueft ob ein Wort im definierten Woerterbuch vorkommt
	* @param string $dict : Woerterbuch in welchem nachgeschlagen werden soll
	* @param string $string : Wort, welches geprueft werden soll
	* @return bool
	*/
	public function exists( $string )
	{
		$string = strtolower($string);
		
		while (list(,$val) = each($this->arrData)) {
			if ($string == $val) {
				return true;
			}
		}
					
		return false;		
	}
	

	/**
	* Liefert ein Array mit allen Woertern des Woerterbuchs zurueck
	* @return array
	*/
	public function &getList ()
	{
		return $this->arrData;
	}


	/**
	* Liefert ein Array mit allen Woertern des Woerterbuchs zurueck
	* @return array
	*/
	public function getCount ()
	{
		return (int) count($this->arrData);
	}
	
	
}


?>